#ifndef ACTIONNET_H
#define ACTIONNET_H

#include <QtCore>

/**
 * @author LOPEZ CARON
 * @brief Représente les actions liées à la gestion du réseau
 */

typedef enum _ActionNet {
    ACT_CONNECT,
    ACT_JOUEUR_ID,
    ACT_JOUEURS_LIST,
    ACT_JOUEUR_NEW_CON,
    ACT_JOUEUR_DECO,
    ACT_PAY_JOUEUR_NEW_CON,
    ACT_JOUEUR_GO,
    ACT_PAYS,
    ACT_MESSAGE,
    ACT_PION_ADD,
    ACT_PION_RM,
    ACT_CHANGE_STATUT,
    ACT_INITIALISE,
    ACT_SET_JOUEUR
}ActionNet;

class ANet
{
public:
    static QString getNom(ActionNet a){
        switch(a){
            case ACT_CONNECT: return "ACT_CONNECT";
            case ACT_JOUEUR_ID: return "ACT_JOUEUR_ID";
            case ACT_JOUEURS_LIST: return "ACT_JOUEURS_LIST";
            case ACT_JOUEUR_NEW_CON: return "ACT_JOUEUR_NEW_CON";
            case ACT_JOUEUR_DECO: return "ACT_JOUEUR_DECO";
            case ACT_PAY_JOUEUR_NEW_CON: return "ACT_PAY_JOUEUR_NEW_CON";
            case ACT_JOUEUR_GO: return "ACT_JOUEUR_GO";
            case ACT_PAYS: return "ACT_PAYS";
            case ACT_MESSAGE: return "ACT_MESSAGE";
            case ACT_PION_ADD: return "ACT_PION_ADD";
            case ACT_PION_RM: return "ACT_PION_RM";
            case ACT_CHANGE_STATUT: return "ACT_CHANGE_STATUT";
            case ACT_INITIALISE: return"ACT_INITIALISE";
        case ACT_SET_JOUEUR: return "ACT_SET_JOUEUR";
        }
        return "ACT_INCONNUE";
    }
};

#endif // ACTIONNET_H
